/*  ----------------------------------------------------------------------------
 *  Arello Mobile
 *  Fast 3d Engine
 *  ----------------------------------------------------------------------------
 * Except where otherwise noted, this work is licensed under
 * http://creativecommons.org/licenses/by/3.0
 */

#ifndef __MULTIFILE_RESOURCE_H__
#define __MULTIFILE_RESOURCE_H__

#include "Resource.h"
#include <filesystem/String.hpp>
#include <filesystem/File.h>
#include <filesystem/Finder.h>
#include <AutoContainer.h>
#include <NoCopy.h>
#include <threads/Lock.h>
#include <vector>
#include <list>
#include <map>

#include <zip.h>

namespace liba
{
namespace resource
{

class MultiFile
{
	zip* apk_archive;
public:
	MultiFile(const std::string & apk_filename);
	~MultiFile();

	Resource * create_resource(const filesystem::String & name);

protected:
	Resource * create_resource_from_file(const filesystem::String & name);
};

} // namespace resource
} // namespace liba

using namespace liba;

#endif //__MULTIFILE_RESOURCE_H__

